//JavaScript
var curentLienId;

/**
 * ********************************
 * MÚthodes d'envoie des requÛtes 
 * ******************************** 
 */ 

function getLien(idLien){
  if (idLien != -1){
    var url = 'include/bd/update_liens_bd.php';
    $.getJSON(url
        ,{type_requete:'get_lien'
          ,id_lien:idLien}
        ,gestionReponseLien);
  }else{
    gestionReponseLien(null);  
  }
}

function getCategories(){
  var url = 'include/bd/update_liens_bd.php';
  $.getJSON(url
    ,{type_requete:'get_categories'}
    ,gestionReponseCategories);
}

function validLien(){
// On valide le lien en base
 var url = 'include/bd/update_liens_bd.php';
 var typeUpdate = 'add_lien';
 if (curentLienId != -1){
    typeUpdate = 'edit_lien';
 }
 var categorieLien = $('#idCategories')[0].value;
 var titreLien = $('#idTitreLien')[0].value;
 var texteLien = $('#idTexteLien')[0].value;
 var urlLien = $('#idUrlLien')[0].value;
 
 if (trim(titreLien) == ""){
  alert("Vous devez mettre un titre.");
 }else{
   
   if (trim(texteLien) == ""){
    alert("Vous devez mettre un descriptif de lien.");
   }else{
   
     if (trim(urlLien) == ""){
       alert("Vous devez mettre une url.");
     }else{
       titreLien = htmlentities(titreLien);
       texteLien = htmlentities(texteLien);
       // Ó la suite de l'appel on mettra Ó jour les listes d'illustrations
       $.getJSON(url
          ,{type_requete:'update_lien'
            , type_update:typeUpdate
            , id_lien:curentLienId
            , categorie_lien:categorieLien
            , titre_lien:titreLien
            , texte_lien:texteLien
            , url_lien:urlLien}
          ,gestionReponseValidLien);
      }
    }
  }
}

function addCategorieToBase(){
  var nomCategorie = $('#idNewCategorie')[0].value;
  var url = 'include/bd/update_liens_bd.php';
  $.getJSON(url
    ,{type_requete:'add_categorie'
      ,nom_categorie:nomCategorie}
    ,gestionReponseAddCategorie);
}

/**
 * ********************************
 * MÚthodes de traitement des rÚponses 
 * ******************************** 
 */ 
 
function gestionReponseLien(lien)
{
    if (lien != null){
      $('#idTitreLien')[0].value = html_entity_decode(lien.titre);
      $('#idTexteLien').html(html_entity_decode(lien.desc));
      $('#idUrlLien')[0].value = lien.url;
      
      for (var i = 0; i < $("#idCategories")[0].options.length; i ++){
        var option = $("#idCategories")[0].options[i];
        if (option.value == lien.idCat){
          option.selected = true;
          break;
        }
      }
    }
}

function gestionReponseCategories(categories){
  if (categories != null){
    for (var i = 0; i < categories.length; i++){
      var categorie = categories[i];
      addCategorie(categorie.idSection, categorie.nomSection);      
    }
    $("#idCategories")[0].options[0].selected = true;
  }
}

function gestionReponseValidLien(lien){
  changePage();
}

function gestionReponseAddCategorie(categorie){
  //On vide le champ associÚ
  $('#idNewCategorie')[0].value = '';
  addCategorie(categorie.idSection, categorie.nomSection);
}
 
 /**
 * ********************************
 * MÚthodes de manipulation graphiques 
 * ******************************** 
 */ 
 

function manageLayout(idLien){
  curentLienId = idLien;
  var urlImg = "images/";
  if (idLien == -1){
    urlImg += "liens.png";
    $('#titreZoneLien').html("Ajouter un lien");
  }else{
    urlImg += "liens.png";
    $('#divCategorie').hide();
    $('#titreZoneLien').html("Editer un lien");
  }
  
  $('#idImgModule')[0].src = urlImg;
}

function addCategorie(idCategorie, categorieName){
  var length = $("#idCategories")[0].options.length; 
  $("#idCategories")[0].options[length]= 
        new Option(categorieName
                    ,idCategorie
                    , false
                    , true);
}

function changePage(){
  document.location = 'index.php?page=liens'; 
}
